﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class Algorithms
   | CodeJam </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class Algorithms
   | CodeJam ">
    <meta name="generator" content="docfx 2.23.1.0">
    
    <link rel="shortcut icon" href="../../favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../../index.html">
                <img id="logo" class="svg" src="../../images/CodeJam.Main.Icon.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="CodeJam.Algorithms">
  
  
  <h1 id="CodeJam_Algorithms" data-uid="CodeJam.Algorithms" class="text-break">Class Algorithms
  </h1>
  <div class="markdown level0 summary"><p>Miscellaneous algorithms</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">Algorithms</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="CodeJam.html">CodeJam</a></h6>
  <h6><strong>Assembly</strong>: CodeJam.dll</h6>
  <h5 id="CodeJam_Algorithms_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static class Algorithms</code></pre>
  </div>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L246">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTime},System.DateTime)">EqualRange(IList&lt;DateTime&gt;, DateTime)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTime&gt; list, DateTime value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L259">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32)">EqualRange(IList&lt;DateTime&gt;, DateTime, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTime&gt; list, DateTime value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L273">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32,System.Int32)">EqualRange(IList&lt;DateTime&gt;, DateTime, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTime&gt; list, DateTime value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L318">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset)">EqualRange(IList&lt;DateTimeOffset&gt;, DateTimeOffset)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L331">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32)">EqualRange(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L345">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32,System.Int32)">EqualRange(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L102">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Double},System.Double)">EqualRange(IList&lt;Double&gt;, Double)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;double&gt; list, double value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L115">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Double},System.Double,System.Int32)">EqualRange(IList&lt;Double&gt;, Double, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;double&gt; list, double value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L129">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Double},System.Double,System.Int32,System.Int32)">EqualRange(IList&lt;Double&gt;, Double, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;double&gt; list, double value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L30">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Single},System.Single)">EqualRange(IList&lt;Single&gt;, Single)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;float&gt; list, float value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L43">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Single},System.Single,System.Int32)">EqualRange(IList&lt;Single&gt;, Single, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;float&gt; list, float value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L57">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.Single},System.Single,System.Int32,System.Int32)">EqualRange(IList&lt;Single&gt;, Single, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;float&gt; list, float value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L174">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan)">EqualRange(IList&lt;TimeSpan&gt;, TimeSpan)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;TimeSpan&gt; list, TimeSpan value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L187">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32)">EqualRange(IList&lt;TimeSpan&gt;, TimeSpan, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.generated.cs/#L201">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32,System.Int32)">EqualRange(IList&lt;TimeSpan&gt;, TimeSpan, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.IComparable.cs/#L25">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1)">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.Comparer.cs/#L23">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1,System.Func{``0,``1,System.Int32})">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [0, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [0, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.IComparable.cs/#L46">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1,System.Int32)">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.Comparer.cs/#L42">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Func{``0,``1,System.Int32})">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt;= value or list.Count if no such i exists
j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] &gt; value or list.Count if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.IComparable.cs/#L69">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32)">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.EqualRange%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.EqualRange.Comparer.cs/#L63">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_EqualRange_" data-uid="CodeJam.Algorithms.EqualRange*"></a>
  <h4 id="CodeJam_Algorithms_EqualRange__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.EqualRange``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32,System.Func{``0,``1,System.Int32})">EqualRange&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the tuple of [i, j] where
i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt;= value or endIndex if no such i exists
j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] &gt; value or endIndex if no such j exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;int&gt; EqualRange&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;<span class="xref">System.Int32</span>&gt;</td>
        <td><p>The tuple of lower bound and upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L202">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTime},System.DateTime)">LowerBound(IList&lt;DateTime&gt;, DateTime)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTime&gt; list, DateTime value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L214">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32)">LowerBound(IList&lt;DateTime&gt;, DateTime, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTime&gt; list, DateTime value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L227">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32,System.Int32)">LowerBound(IList&lt;DateTime&gt;, DateTime, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTime&gt; list, DateTime value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L260">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset)">LowerBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L272">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32)">LowerBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L285">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32,System.Int32)">LowerBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L86">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Double},System.Double)">LowerBound(IList&lt;Double&gt;, Double)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;double&gt; list, double value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L98">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Double},System.Double,System.Int32)">LowerBound(IList&lt;Double&gt;, Double, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;double&gt; list, double value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L111">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Double},System.Double,System.Int32,System.Int32)">LowerBound(IList&lt;Double&gt;, Double, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;double&gt; list, double value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L28">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Single},System.Single)">LowerBound(IList&lt;Single&gt;, Single)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;float&gt; list, float value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L40">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Single},System.Single,System.Int32)">LowerBound(IList&lt;Single&gt;, Single, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;float&gt; list, float value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L53">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.Single},System.Single,System.Int32,System.Int32)">LowerBound(IList&lt;Single&gt;, Single, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;float&gt; list, float value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L144">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan)">LowerBound(IList&lt;TimeSpan&gt;, TimeSpan)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;TimeSpan&gt; list, TimeSpan value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L156">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32)">LowerBound(IList&lt;TimeSpan&gt;, TimeSpan, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.generated.cs/#L169">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32,System.Int32)">LowerBound(IList&lt;TimeSpan&gt;, TimeSpan, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.IComparable.cs/#L22">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1)">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.Comparer.cs/#L20">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1,System.Func{``0,``1,System.Int32})">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.IComparable.cs/#L41">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1,System.Int32)">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.Comparer.cs/#L38">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Func{``0,``1,System.Int32})">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt;= value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.IComparable.cs/#L63">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32)">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.LowerBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.LowerBound.Comparer.cs/#L58">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_LowerBound_" data-uid="CodeJam.Algorithms.LowerBound*"></a>
  <h4 id="CodeJam_Algorithms_LowerBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.LowerBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32,System.Func{``0,``1,System.Int32})">LowerBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt;= value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int LowerBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The lower bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%602(System.Func%7B%60%600%2C%60%601%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.cs/#L58">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``2(System.Func{``0,``1},System.Boolean)">Memoize&lt;TArg, TResult&gt;(Func&lt;TArg, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific argument.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg, TResult&gt; Memoize&lt;TArg, TResult&gt;(this Func&lt;TArg, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg</span></td>
        <td><p>Type of argument</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Collections_Generic_IEqualityComparer___0__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%602(System.Func%7B%60%600%2C%60%601%7D%2CSystem.Collections.Generic.IEqualityComparer%7B%60%600%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.cs/#L22">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Collections_Generic_IEqualityComparer___0__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``2(System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``0},System.Boolean)">Memoize&lt;TArg, TResult&gt;(Func&lt;TArg, TResult&gt;, IEqualityComparer&lt;TArg&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific argument.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg, TResult&gt; Memoize&lt;TArg, TResult&gt;(this Func&lt;TArg, TResult&gt; func, IEqualityComparer&lt;TArg&gt; comparer, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Collections.Generic.IEqualityComparer</span>&lt;TArg&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>Argument comparer</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg</span></td>
        <td><p>Type of argument</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Collections_Generic_IEqualityComparer___0__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%602(System.Func%7B%60%600%2C%60%601%7D%2CSystem.Collections.Generic.IEqualityComparer%7B%60%600%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.cs/#L39">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Collections_Generic_IEqualityComparer___0__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``2(System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``0},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg, TResult&gt;(Func&lt;TArg, TResult&gt;, IEqualityComparer&lt;TArg&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific argument.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg, TResult&gt; Memoize&lt;TArg, TResult&gt;(this Func&lt;TArg, TResult&gt; func, IEqualityComparer&lt;TArg&gt; comparer, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Collections.Generic.IEqualityComparer</span>&lt;TArg&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>Argument comparer</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg</span></td>
        <td><p>Type of argument</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%602(System.Func%7B%60%600%2C%60%601%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.cs/#L73">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__2_System_Func___0___1__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``2(System.Func{``0,``1},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg, TResult&gt;(Func&lt;TArg, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific argument.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg, TResult&gt; Memoize&lt;TArg, TResult&gt;(this Func&lt;TArg, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg</span></td>
        <td><p>Type of argument</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__3_System_Func___0___1___2__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%603(System.Func%7B%60%600%2C%60%601%2C%60%602%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L30">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__3_System_Func___0___1___2__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``3(System.Func{``0,``1,``2},System.Boolean)">Memoize&lt;TArg1, TArg2, TResult&gt;(Func&lt;TArg1, TArg2, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TResult&gt; Memoize&lt;TArg1, TArg2, TResult&gt;(this Func&lt;TArg1, TArg2, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__3_System_Func___0___1___2__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%603(System.Func%7B%60%600%2C%60%601%2C%60%602%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L46">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__3_System_Func___0___1___2__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``3(System.Func{``0,``1,``2},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TResult&gt;(Func&lt;TArg1, TArg2, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TResult&gt; Memoize&lt;TArg1, TArg2, TResult&gt;(this Func&lt;TArg1, TArg2, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__4_System_Func___0___1___2___3__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%604(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L69">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__4_System_Func___0___1___2___3__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``4(System.Func{``0,``1,``2,``3},System.Boolean)">Memoize&lt;TArg1, TArg2, TArg3, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__4_System_Func___0___1___2___3__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%604(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L86">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__4_System_Func___0___1___2___3__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``4(System.Func{``0,``1,``2,``3},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TArg3, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__5_System_Func___0___1___2___3___4__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%605(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L110">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__5_System_Func___0___1___2___3___4__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``5(System.Func{``0,``1,``2,``3,``4},System.Boolean)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__5_System_Func___0___1___2___3___4__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%605(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L128">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__5_System_Func___0___1___2___3___4__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``5(System.Func{``0,``1,``2,``3,``4},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__6_System_Func___0___1___2___3___4___5__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%606(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L153">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__6_System_Func___0___1___2___3___4___5__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``6(System.Func{``0,``1,``2,``3,``4,``5},System.Boolean)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__6_System_Func___0___1___2___3___4___5__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%606(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L172">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__6_System_Func___0___1___2___3___4___5__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``6(System.Func{``0,``1,``2,``3,``4,``5},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__7_System_Func___0___1___2___3___4___5___6__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%607(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%2C%60%606%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L198">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__7_System_Func___0___1___2___3___4___5___6__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``7(System.Func{``0,``1,``2,``3,``4,``5,``6},System.Boolean)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg6</span></td>
        <td><p>Type of argument 6</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__7_System_Func___0___1___2___3___4___5___6__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%607(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%2C%60%606%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L218">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__7_System_Func___0___1___2___3___4___5___6__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``7(System.Func{``0,``1,``2,``3,``4,``5,``6},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg6</span></td>
        <td><p>Type of argument 6</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__8_System_Func___0___1___2___3___4___5___6___7__System_Boolean_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%608(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%2C%60%606%2C%60%607%7D%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L245">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__8_System_Func___0___1___2___3___4___5___6___7__System_Boolean_" data-uid="CodeJam.Algorithms.Memoize``8(System.Func{``0,``1,``2,``3,``4,``5,``6,``7},System.Boolean)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;, Boolean)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt; func, bool threadSafe = false)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">threadSafe</span></td>
        <td><p>If true - returns thread safe implementation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg6</span></td>
        <td><p>Type of argument 6</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg7</span></td>
        <td><p>Type of argument 7</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Memoize__8_System_Func___0___1___2___3___4___5___6___7__System_Threading_LazyThreadSafetyMode_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Memoize%60%608(System.Func%7B%60%600%2C%60%601%2C%60%602%2C%60%603%2C%60%604%2C%60%605%2C%60%606%2C%60%607%7D%2CSystem.Threading.LazyThreadSafetyMode)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Memoize.generated.cs/#L266">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Memoize_" data-uid="CodeJam.Algorithms.Memoize*"></a>
  <h4 id="CodeJam_Algorithms_Memoize__8_System_Func___0___1___2___3___4___5___6___7__System_Threading_LazyThreadSafetyMode_" data-uid="CodeJam.Algorithms.Memoize``8(System.Func{``0,``1,``2,``3,``4,``5,``6,``7},System.Threading.LazyThreadSafetyMode)">Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;(Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;, LazyThreadSafetyMode)</h4>
  <div class="markdown level1 summary"><p>Caches function value for specific arguments.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt; Memoize&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;(this Func&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt; func, LazyThreadSafetyMode threadSafety)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;</td>
        <td><span class="parametername">func</span></td>
        <td><p>Function to memoize.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Threading.LazyThreadSafetyMode</span></td>
        <td><span class="parametername">threadSafety</span></td>
        <td><p>One of the enumeration values that specifies the thread safety mode.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult&gt;</td>
        <td><p>Memoized function</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TArg1</span></td>
        <td><p>Type of argument 1</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg2</span></td>
        <td><p>Type of argument 2</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg3</span></td>
        <td><p>Type of argument 3</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg4</span></td>
        <td><p>Type of argument 4</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg5</span></td>
        <td><p>Type of argument 5</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg6</span></td>
        <td><p>Type of argument 6</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TArg7</span></td>
        <td><p>Type of argument 7</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TResult</span></td>
        <td><p>Type of result</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Int32_System_Int32_System_Predicate___0__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.PartitionPoint%60%601(System.Collections.Generic.IList%7B%60%600%7D%2CSystem.Int32%2CSystem.Int32%2CSystem.Predicate%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.PartitionPoint.cs/#L50">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_PartitionPoint_" data-uid="CodeJam.Algorithms.PartitionPoint*"></a>
  <h4 id="CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Int32_System_Int32_System_Predicate___0__" data-uid="CodeJam.Algorithms.PartitionPoint``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32,System.Predicate{``0})">PartitionPoint&lt;T&gt;(IList&lt;T&gt;, Int32, Int32, Predicate&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the index i in the range [startIndex, endIndex - 1] such that
predicate(list[j]) = true for j &lt; i
and predicate(list[k]) = false for k &gt;= i
or endIndex if no such i exists
<remarks>The list should be partitioned according to the predicate</remarks></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int PartitionPoint&lt;T&gt;(this IList&lt;T&gt; list, int startIndex, int endIndex, Predicate&lt;T&gt; predicate)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;T&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Predicate</span>&lt;T&gt;</td>
        <td><span class="parametername">predicate</span></td>
        <td><p>The predicate</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The partition point</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Int32_System_Predicate___0__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.PartitionPoint%60%601(System.Collections.Generic.IList%7B%60%600%7D%2CSystem.Int32%2CSystem.Predicate%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.PartitionPoint.cs/#L34">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_PartitionPoint_" data-uid="CodeJam.Algorithms.PartitionPoint*"></a>
  <h4 id="CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Int32_System_Predicate___0__" data-uid="CodeJam.Algorithms.PartitionPoint``1(System.Collections.Generic.IList{``0},System.Int32,System.Predicate{``0})">PartitionPoint&lt;T&gt;(IList&lt;T&gt;, Int32, Predicate&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the index i in the range [startIndex, list.Count - 1] such that
predicate(list[j]) = true for j &lt; i
and predicate(list[k]) = false for k &gt;= i
or list.Count if no such i exists
<remarks>The list should be partitioned according to the predicate</remarks></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int PartitionPoint&lt;T&gt;(this IList&lt;T&gt; list, int startIndex, Predicate&lt;T&gt; predicate)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;T&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Predicate</span>&lt;T&gt;</td>
        <td><span class="parametername">predicate</span></td>
        <td><p>The predicate</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The partition point</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Predicate___0__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.PartitionPoint%60%601(System.Collections.Generic.IList%7B%60%600%7D%2CSystem.Predicate%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.PartitionPoint.cs/#L19">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_PartitionPoint_" data-uid="CodeJam.Algorithms.PartitionPoint*"></a>
  <h4 id="CodeJam_Algorithms_PartitionPoint__1_System_Collections_Generic_IList___0__System_Predicate___0__" data-uid="CodeJam.Algorithms.PartitionPoint``1(System.Collections.Generic.IList{``0},System.Predicate{``0})">PartitionPoint&lt;T&gt;(IList&lt;T&gt;, Predicate&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the index i in the range [0, list.Count - 1] such that
predicate(list[j]) = true for j &lt; i
and predicate(list[k]) = false for k &gt;= i
or list.Count if no such i exists
<remarks>The list should be partitioned according to the predicate</remarks></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int PartitionPoint&lt;T&gt;(this IList&lt;T&gt; list, Predicate&lt;T&gt; predicate)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;T&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Predicate</span>&lt;T&gt;</td>
        <td><span class="parametername">predicate</span></td>
        <td><p>The predicate</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The partition point</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_Swap__1___0____0__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.Swap%60%601(%60%600%40%2C%60%600%40)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.Swap.cs/#L17">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_Swap_" data-uid="CodeJam.Algorithms.Swap*"></a>
  <h4 id="CodeJam_Algorithms_Swap__1___0____0__" data-uid="CodeJam.Algorithms.Swap``1(``0@,``0@)">Swap&lt;T&gt;(ref T, ref T)</h4>
  <div class="markdown level1 summary"><p>Swaps two objects</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static void Swap&lt;T&gt;(ref T value1, ref T value2)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value1</span></td>
        <td><p>First value to swap.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value2</span></td>
        <td><p>Second value to swap.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>Type of values</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L232">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTime},System.DateTime)">UpperBound(IList&lt;DateTime&gt;, DateTime)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTime&gt; list, DateTime value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L244">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32)">UpperBound(IList&lt;DateTime&gt;, DateTime, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTime&gt; list, DateTime value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTime%7D%2CSystem.DateTime%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L257">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTime__System_DateTime_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTime},System.DateTime,System.Int32,System.Int32)">UpperBound(IList&lt;DateTime&gt;, DateTime, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTime&gt; list, DateTime value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTime</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L300">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset)">UpperBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L312">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32)">UpperBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.DateTimeOffset%7D%2CSystem.DateTimeOffset%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L325">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_DateTimeOffset__System_DateTimeOffset_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.DateTimeOffset},System.DateTimeOffset,System.Int32,System.Int32)">UpperBound(IList&lt;DateTimeOffset&gt;, DateTimeOffset, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;DateTimeOffset&gt; list, DateTimeOffset value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.DateTimeOffset</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTimeOffset</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L96">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Double},System.Double)">UpperBound(IList&lt;Double&gt;, Double)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;double&gt; list, double value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L108">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Double},System.Double,System.Int32)">UpperBound(IList&lt;Double&gt;, Double, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;double&gt; list, double value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Double%7D%2CSystem.Double%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L121">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Double__System_Double_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Double},System.Double,System.Int32,System.Int32)">UpperBound(IList&lt;Double&gt;, Double, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;double&gt; list, double value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Double</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Double</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L28">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Single},System.Single)">UpperBound(IList&lt;Single&gt;, Single)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;float&gt; list, float value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L40">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Single},System.Single,System.Int32)">UpperBound(IList&lt;Single&gt;, Single, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;float&gt; list, float value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.Single%7D%2CSystem.Single%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L53">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_Single__System_Single_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.Single},System.Single,System.Int32,System.Int32)">UpperBound(IList&lt;Single&gt;, Single, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;float&gt; list, float value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.Single</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Single</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L164">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan)">UpperBound(IList&lt;TimeSpan&gt;, TimeSpan)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;TimeSpan&gt; list, TimeSpan value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L176">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32)">UpperBound(IList&lt;TimeSpan&gt;, TimeSpan, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList%7BSystem.TimeSpan%7D%2CSystem.TimeSpan%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.generated.cs/#L189">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound_System_Collections_Generic_IList_System_TimeSpan__System_TimeSpan_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound(System.Collections.Generic.IList{System.TimeSpan},System.TimeSpan,System.Int32,System.Int32)">UpperBound(IList&lt;TimeSpan&gt;, TimeSpan, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound(this IList&lt;TimeSpan&gt; list, TimeSpan value, int startIndex, int endIndex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;<span class="xref">System.TimeSpan</span>&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.IComparable.cs/#L22">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1)">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.Comparer.cs/#L20">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1,System.Func{``0,``1,System.Int32})">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [0, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.IComparable.cs/#L40">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1,System.Int32)">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.Comparer.cs/#L38">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Func{``0,``1,System.Int32})">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] &gt; value
or list.Count if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.IComparable.cs/#L62">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32)">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex)where TElement : IComparable&lt;TValue&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type
<remarks>Should implement IComparable&lt;TValue&gt;</remarks></p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms.UpperBound%60%602(System.Collections.Generic.IList%7B%60%600%7D%2C%60%601%2CSystem.Int32%2CSystem.Int32%2CSystem.Func%7B%60%600%2C%60%601%2CSystem.Int32%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.Comparer.cs/#L58">View Source</a>
  </span>
  <a id="CodeJam_Algorithms_UpperBound_" data-uid="CodeJam.Algorithms.UpperBound*"></a>
  <h4 id="CodeJam_Algorithms_UpperBound__2_System_Collections_Generic_IList___0____1_System_Int32_System_Int32_System_Func___0___1_System_Int32__" data-uid="CodeJam.Algorithms.UpperBound``2(System.Collections.Generic.IList{``0},``1,System.Int32,System.Int32,System.Func{``0,``1,System.Int32})">UpperBound&lt;TElement, TValue&gt;(IList&lt;TElement&gt;, TValue, Int32, Int32, Func&lt;TElement, TValue, Int32&gt;)</h4>
  <div class="markdown level1 summary"><p>Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] &gt; value
or endIndex if no such i exists</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int UpperBound&lt;TElement, TValue&gt;(this IList&lt;TElement&gt; list, TValue value, int startIndex, int endIndex, Func&lt;TElement, TValue, int&gt; comparer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IList</span>&lt;TElement&gt;</td>
        <td><span class="parametername">list</span></td>
        <td><p>The sorted list</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TValue</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to compare</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">startIndex</span></td>
        <td><p>The minimum index</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">endIndex</span></td>
        <td><p>The upper bound for the index (not included)</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;TElement, TValue, <span class="xref">System.Int32</span>&gt;</td>
        <td><span class="parametername">comparer</span></td>
        <td><p>The function with the Comparer&lt;T&gt;.Compare semantics</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The upper bound for the value</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TElement</span></td>
        <td><p>The list element type</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TValue</span></td>
        <td><p>The type of the value</p>
</td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Algorithms.md&amp;value=---%0Auid%3A%20CodeJam.Algorithms%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Algorithms/Algorithms.UpperBound.Comparer.cs/#L8" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright � 2015-2017
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
